package com.mspbots.core.wise.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.JsonNode;
import com.mspbots.core.typehandler.JsonNodeTypeHandler;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * @author billb
 */
@Data
@TableName(autoResultMap = true)
public class TenantUser extends TenantEntity {

    private Long cwUid;
    private Long departmentId;
    private String identifier;
    private Long tenantRoleId;
    private String firstname;
    private String lastname;
    private String email;
    private Long manager;
    private String software;
    private Boolean enable;
    private String licenseClass;

    private LocalDateTime createDate;
    private LocalDateTime updateTime;
    private LocalDateTime syncTime;

    @TableField(typeHandler = JsonNodeTypeHandler.class)
    private JsonNode extend;
    @TableField(typeHandler = JsonNodeTypeHandler.class)
    private JsonNode skills;
    @TableField(typeHandler = JsonNodeTypeHandler.class)
    private JsonNode teamNames;

    @TableField(exist = false)
    private List<String> skillNames;

    @TableField(exist = false)
    private List<String> teamNameList;

    @TableField(exist = false)
    private String licenseClassNot;
}
